{extend name="public/base"}

{block name="main"}
<div class="layui-card">
    <fieldset class="layui-elem-field site-demo-button" style="margin-top: 10px;border:0">
        <div class="layui-btn-group demoTable">
            <a href="javascript:;" class="layui-btn layui-btn-sm" onclick="open_page('添加配置', '{:url(\'save_config\')}')">添加配置</a>
        </div>
    </fieldset>
    <table class="layui-table" lay-size="sm" id="config_list" lay-filter="config_list"></table>
</div>
{/block}

{block name="js"}
<script type="text/javascript">
    layui.config({
        base: '/layui_admin/src/layuiadmin/' //静态资源所在路径
    }).extend({
        index: 'lib/index' //主入口模块
    }).use(['index', 'table'], function () {
        let $ = layui.jquery, table = layui.table, admin = layui.admin;

        // 获取配置列表
        let config_list = table.render({
            elem: '#config_list'
            ,url: '{:url("index")}' //模拟接口
            ,page :true
            ,cols: [[
                {type: 'numbers'}
                ,{field: 'key', title: 'key', width: 300}
                ,{field: 'value', title: 'value', edit:'text'}
            ]]
        });

        table.on('edit(config_list)', function(obj){ //注：edit是固定事件名，test是table原始容器的属性 lay-filter="对应的值"
            let data = obj.data;
            layer.confirm('确定修改？', {
                title : '修改状态'
            }, function(index) {
                //请求登入接口
                admin.req({
                    url: "{:url('save_config')}" //实际使用请改成服务端真实接口
                    ,data: {
                        id: data.id,
                        value: obj.value
                    }
                    ,done: function(res){
                        //登入成功的提示与跳转
                        layer.msg('修改成功', {
                            offset: '15px'
                            ,icon: 1
                            ,time: 1000
                        }, function(){
                            config_list.reload();
                        });
                    }
                });
            })

        });

        //监听工具条
        table.on('tool(config_list)', function(obj){ //注：tool是工具条事件名，test是table原始容器的属性 lay-filter="对应的值"
            let data = obj.data; //获得当前行数据
            let layEvent = obj.event; //获得 lay-event 对应的值（也可以是表头的 event 参数对应的值）
            let tr = obj.tr; //获得当前行 tr 的DOM对象

            if(layEvent === 'save'){ //查看
                open_page('编辑配置', "{:url('save_admin')}?id=" + data.id);
                //do somehing
            } else if(layEvent === 'show_auth') {
                open_page('查看权限', "{:url('show_auth')}?id=" + data.id);
            } else if(layEvent === 'edit_status'){ //编辑状态
                layer.confirm('确定修改？', {
                    title : '修改状态'
                }, function(index) {
                    //请求登入接口
                    admin.req({
                        url: "{:url('save_status')}" //实际使用请改成服务端真实接口
                        ,data: {
                            id: data.id,
                            status: data.status == 1 ? 2 : 1
                        }
                        ,done: function(res){
                            //登入成功的提示与跳转
                            layer.msg('修改成功', {
                                offset: '15px'
                                ,icon: 1
                                ,time: 1000
                            }, function(){
                                location.reload(); //刷新页面
                            });
                        }
                    });
                })
            }
        });
    });
</script>
{/block}